﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;

namespace DataLibrary
{
    public class Ctbl_Weblink: IData<tbl_Weblink>
    {

        public Ctbl_Weblink() { 
        }
        public Ctbl_Weblink(String myconnecString):
            base(myconnecString)
        { 

        }

        public override List<tbl_Weblink> GetAll() {
            String strSQL = "select * from " + tbl_Weblink.b_tbl_Weblink;
            return GetAll(strSQL, CommandType.Text);
        }

        public override tbl_Weblink GetItem(IDataReader dr)
        {
            tbl_Weblink obj = new tbl_Weblink();
            obj.IdWeblink = Convert.ToInt32(dr[tbl_Weblink.c_idWeblink]);
            obj.Title = dr[tbl_Weblink.c_Title].ToString();
            obj.Url = dr[tbl_Weblink.c_Url].ToString();
            obj.IsActive = Convert.ToInt32(dr[tbl_Weblink.c_isActive]);
            return obj;
        }

        public override List<tbl_Weblink> GetAll(tbl_Weblink item)
        {
            throw new NotImplementedException();
        }

        public override tbl_Weblink GetItemById(object id)
        {
            return GetAll().SingleOrDefault(p => p.IdWeblink ==Convert.ToInt32(id));
        }

        protected override int InsertOnSubmit(tbl_Weblink item, int t)
        {
            return connec.ExecuteNonQuery("proWeblink", CommandType.StoredProcedure, new SqlParameter("@flag", t),
                new SqlParameter("@" + tbl_Weblink.c_idWeblink, item.IdWeblink), new SqlParameter("@" + tbl_Weblink.c_isActive, item.IsActive),
                new SqlParameter("@" + tbl_Weblink.c_Title, item.Title), new SqlParameter("@" + tbl_Weblink.c_Url, item.Url));
        }
    }
}
